package com.common.aop;

import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;

/**
 * 服务日志切面
 * @author	ficus
 */
@Order(1)
@Aspect
@Component
public class ServiceLogAspect extends LogAspect{

	/**
	 * 设置切入点，方法上标记了ApiOperation注解的将会被切入.
	 */
	@Pointcut("@within(com.common.api.annontation.ServiceLog)")
	public void pointcut() {
	}

	/**
	 * 根据切入点做环绕通知.
	 * @param point
	 * @return
	 */
	@Around("pointcut()")
	public Object around(ProceedingJoinPoint point) throws Throwable {
		return super.around(point);
	}

}
